WeldJpaInjectionServices{ }
resolvePersistenceContext{
  final PersistenceContext context=injectionPoint.getAnnotated().getAnnotation(PersistenceContext.class);
  if (context == null) {
    throw WeldMessages.MESSAGES.annotationNotFound(PersistenceContext.class,injectionPoint.getMember());
  final String scopedPuName=getScopedPUName(deploymentUnit,context.unitName());
  final ServiceController<?> serviceController=serviceRegistry.getRequiredService(persistenceUnitServiceName);
  PersistenceUnitServiceImpl persistenceUnitService=(PersistenceUnitServiceImpl)serviceController.getValue();
  return new TransactionScopedEntityManager(scopedPuName,new HashMap<Object,Object>(),persistenceUnitService.getEntityManagerFactory());
}
resolvePersistenceUnit{
  final PersistenceUnit context=injectionPoint.getAnnotated().getAnnotation(PersistenceUnit.class);
    throw WeldMessages.MESSAGES.annotationNotFound(PersistenceUnit.class,injectionPoint.getMember());
  final String scopedPuName=getScopedPUName(deploymentUnit,context.unitName());
  final ServiceName persistenceUnitServiceName=PersistenceUnitServiceImpl.getPUServiceName(scopedPuName);
  final ServiceController<?> serviceController=serviceRegistry.getRequiredService(persistenceUnitServiceName);
  PersistenceUnitServiceImpl persistenceUnitService=(PersistenceUnitServiceImpl)serviceController.getValue();
  return persistenceUnitService.getEntityManagerFactory();
}
cleanup{ }
getScopedPUName{
  PersistenceUnitMetadata scopedPu;
  scopedPu=PersistenceUnitSearch.resolvePersistenceUnitSupplier(deploymentUnit,persistenceUnitName);
  return scopedPu.getScopedPersistenceUnitName();
}
